'use strict';
/**
 * author：小小游 --- allen
 * date：2018.02.05
 * lastUpdateDate：2018.02.05
 * description：Map的基本用法
 */
/**
 * 学习下Map的set / get方法，支持链式操作
 * set可以任意值都可以，get是根据key拿到对应的value
 * delete方法
 * has方法
 * size属性
 * clear方法
 * 如下例子所示：
 */
let obj = {
    'name' : 'xiaoyou',
    'qq' : '214913005',
    'my siteEffect' : 'kaiyouServices.com/kaiyou'
};

console.log(obj['my siteEffect']);

// 创建Map对象
let map = new Map();
// map对象设置值
map.set(obj, 'oh very good!');
map.set(10000, 'this is a number!');
console.log(map.get(obj));
console.log(map.get(10000));
console.log(`删除之前数据还有${map.size}条`);
// map对象删除指定值
map.delete(10000);
console.log(`删除之后数据还有${map.size}条`);
// 因为obj，我set进去没删除还在map对象里，所以打印结果是true
console.log(map.has(obj));
// map的set / get方法，支持链式操作
map.set('key1', 'value1').set('key2', 'value2');
console.log(map);
// clear方法删除所有map里的数据
map.clear();
console.log(map);
